This file contains lots of information about O Boy. Some of this information can
be found in the 'about dialog' of the application, some cannot.
Who
- O Boy was developed by Bob Boylan
and I dedicate it to my wife, Terry, for her
love and her understanding of my ways.
- Credits
Jens Peter Alfke - thanks for the AEGizmos ...
I couldn't live without them.
Constantine Spathis (MadHack) - thanks for the shell,
the good times, and MacHack info.
Kevin Koestner - thanks for testing and for your opinion.
Jacquelyn - thanks for helping design the icon.
Katelyn - thanks for the keyboard help.
James/Davey - thanks for loaning me your Game Boy.
Steve Jasik (Clapton of the Mac) - God I love that debugger.
Bare Bones - thanks for the jewel of my development environment.
Metrowerks - thanks for the quality we all need more of.
Onyx - thanks for the feeling that everything is OK.
Monarch - thanks for loaning me the Mac IIfx I used to develop O Boy.
MacHack 96 - thanks for the challenge and, in advance, for a great time.
What
- O Boy is a tool for developers.
It allows you to walk the hierarchy of objects on your
Macintosh using familiar boy-ish controls. O Boy shows
the properties and the sub-models of any object. In
short, it shows you everything.
- O Boy is a Hack, A MacHack that is.
It is an entry in the 1996 MacHack contest - my first
entry in any programming contest so please excuse my
ramblings if they are improper. If you have any
suggestions and/or comments about this Hack then please
drop me a line ... see the 'where'.
- O Boy is (yet another) example of why the MacOS is great.
(I can't believe I just said that). Kidding aside, O Boy
exploits a Mac only technology (AEOM) that is beginning to
reach it's potential. Maybe O Boy will help that cause.
When
- Was O Boy Developed?
O Boy development began on Tax Day 1996 (April 15). It was worked
on at home usually between the hours of 10 and Midnight.
- Was O Boy entered into the MacHack contest? - June 20th 1996.
- Did I purchase my first Mac?
1984 - of course! It was the same year I met my wife ...
needless to say it was a great year!
- Did I land my first Mac development job? 1994.
- Will the next version of O Boy be?
Who knows? Suggestions are welcome.
- You find a bug?
If you find a bug (aka defect) please let me know. If you want to
use some O Boy code in a product of yours - help yourself but
I ask that you send me a copy of that product - see where.
Where
- Can I be reached?
If you would like to contact me via e-mail...
Home: rboylan@suffolk.lib.ny.us
Work: MonHacker@aol.com
or US Mail
79 Saddle Rock Road
East Setauket, NY 11733
- Did I develop O Boy?
At home, Long Island New York. If you really care, the room
is peach, the desk is brown, and the back door is within reach.
I used a Mac II fx that was loaned to me by my employer and, once
again if you care, the desktop pattern is that stock
blue/green/black plaid.
Why
- Did I develop O Boy?
Because I was sick and tired of using script editor
to query objects.
and also ...
Because when I thought about developing a Hack for MacHack
nothing 'cool' was coming to mind - so I decided to do
something I needed instead. Boring - I know, but hopefully
fellow MacHackers will take it back to work with them
after the contest and really really really use it.
- Did I use the Game Boy human interface?
Because it had the simple interface elements I needed to
navigate the AEOM hierarchy. It also has the feel of a
Star Trek tri-corder. Did you ever see how they just
whip out that little thing and in a nanosecond they know
everything - that is the spirit of O Boy.
- Does the 'B' key get you to about O Boy dialog?
Because I couldn't think of any function for that key.
If you have any ideas ...let me know.
How
- Navigating the AEOM hierarchy
Use the + sign control to go up/down/left/right in the hierarchy
double click a submodel to display it (go down hierarchy)
command + left brings you to the first of a kind
command + right brings you to the last of a kind
command + up brings you to the top level
option + left brings you 10 to the left
option + right brings you 10 to the right
- Update the current object data?
hit the 'a' key ... the circle on the right.
- Cancel an update?
hit command + .
- Did I develop O Boy?
With some crankin tools
- Metrowerks Codewarrior
- BBEdit
- The Jasik Debugger
- Resorcerer
- AEGizmos
- QC
------------------------------------------
The Future
Looking into that crystal ball ... I see many ways to improve on O Boy - hopefully the time to do it is available too. I will share with you some of the ideas I am entertaining and hope that you could do the same.
1 Property Boys.
O Boy does a decent job of depicting an object but it really needs to do a better
job displaying properties. How about ... when you double click on a property it
launches an application (<property descriptor type> Boy, reverting to hex boy)
and sends it an apple event like this: make new view with properties {data:_,
propid:_, appaddr:_, objname:_). Finding the app using the file manager is
simple but would require that these property boys be in the same directory as O
Boy. It may be better to ask the finder, via apple events, to find it - that it
what it does - right?
Anyway, these property boys could be written in something like PowerPlant. The
default app, hex boy, would be an app that contains TextEdit windows with hex
data. Just edit the hex data and hit the - 'send' button. With that alone you,
the programmer, would be able to avoid creating scripts for long periods of time.
Once one property boy was written it could be shared with other programmers and
then the number of (good) custom boys could grow. Creating a library of these
property boys could be equivalent to filling your garage with power tools that
would make Norm Abrams drool. Just think of it, an RGB Boy, a Rectangle Boy, an
Alias Boy, a Picture Boy ... why does this feel like OpenDoc?
2 Network Root.
Right now the O Boy hierarchy is rooted at 'this Macintosh' but it could be
rooted at the network. How about ... when you start it up you see the apps on
this macintosh but can hit the "+" up direction and see all the Macs on the
network, hit "+" again and see the zones. Once up there, you would be able to go
down the hierarchy into any Mac that has program linking on. This could be the
ultimate telescope into your neighbor's back yard. You would be able look and
see what documents your boss is editing - right now - sounds like power to me.
Anyway, I guess using the PPC browser would be the easiest way to get this going
... but I think it would feel better without it. Now, if I could only get a
network happening at home....
3 Test Point Objects.
We all have test/debug versions of our apps now - right? Well, what if we went
one step further and made test point objects that O Boy could tap into for
information. For PowerPlant apps I see a lazy LModelObject for providing
LPane/LView information. Right now this gap is filled with debuggers but with
the right property boys (see #1 above) ... maybe it would be worthwhile. I guess
the idea here is really about helping the 'tester' of your app do more white box
testing. Remember, the spirit of O Boy is about the Star Trek Tri-corder ... so
giving testers, or anyone else for that matter, that kind of diagnostic power is
what it is all about.
4 Artwork
As you can see, I'm not the most artistic of programmers - maybe something more
like artistically challenged. If someone with that 'eye' for art wants to donate
artwork (better buttons and the like) then please feel free to drop me a line.
The way it stands now - it's functional, and for me that's OK.
The Past
Developing O Boy was enjoyable - it just took longer than it should (sound
familiar?). Most of the problem were creating the fictitious computer object.
Making it look as though the AEOM was rooted at the computer was not fun ... but
once it was done and the objects were being viewed ... everything fell into
place. After that I really starting using it and you know something ... it
really is a handy tool.
Notes at the Hack ... Added the ability to pump up the volume all the way to 11